package com.dhcc.sds.standard.dto;

import java.util.ArrayList;
import java.util.List;

/**
 * easyUI树形结构转换实体
 * @author zhangdc
 * @version 1.0.0 , 2023年2月3日 上午10:39:28
 */
public class TreeNode {
    /**
     * 显示节点的id
     */
    private Long id;
    /**
     * 显示节点的名称
     */
    private String text;
    /**
     * 显示节点的图标
     */
    private String icon;
    /**
     * 显示节点的父节点
     */
    private Long parentId;
    /**
     * 显示节点的子节点集合
     */
    private List<TreeNode> children;

    /**
     * 空的构造函数
     */
    public TreeNode(){

    }

    public TreeNode(Long id, String text,String icon,Long parentId,List<TreeNode> children){
        super();
        this.id=id;
        this.text=text;
        this.icon=icon;
        this.parentId=parentId;
        this.children=children;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getText() {
        return text;
    }

    public void setText(String text) {
        this.text = text;
    }

    public String getIcon() {
        return icon;
    }

    public void setIcon(String icon) {
        this.icon = icon;
    }

    public Long getParentId() {
        return parentId;
    }

    public void setParentId(Long parentId) {
        this.parentId = parentId;
    }

    public List<TreeNode> getChildren() {
        return children;
    }

    public void setChildren(List<TreeNode> children) {
        this.children = children;
    }

    /**
     * 添加子节点的方法
     * @param node 树节点实体
     */
    public void addChild(TreeNode node){
        if(this.children==null){
            children=new ArrayList<TreeNode>();
            children.add(node);
        }else{
            children.add(node);
        }
    }

}
